package com.umpay.dto.merBusi.req.ebankpay;

import com.umpay.annotation.Pattern;
import com.umpay.dto.merBusi.req.CommonBusiReq;
import org.hibernate.validator.constraints.NotEmpty;
/**
 * @ClassName: EbankPayNotifyBusiReq  
 * @Description: 网银支付通知参数类
 * @author zhangtao  
 * @date May 24, 2018
 */
public class EbankPayNotifyBusiReq extends CommonBusiReq{
	
	/**
	 * 商户号
	 */
	@NotEmpty(message = "商户号不能为空")
	@Pattern(message="商户号格式不正确")
	private String merId;
	
	
	/**
	 * 业务产品号
	 */
	@NotEmpty(message = "业务产品号不能为空")
	@Pattern(message="业务产品号格式不正确")
	private String bProductId;
	
	/**
	 * 支付产品号
	 */
	@NotEmpty(message = "支付产品号不能为空")
	@Pattern(message="支付产品号格式不正确")
	private String pProductId;
	
	/**
	 * 机构号
	 */
	@NotEmpty(message = "机构号不能为空")
	@Pattern(message="机构号格式不正确")
	private String instId;
	
	/**
	 * 交易流水号
	 */
	@NotEmpty(message = "交易流水号不能为空")
	@Pattern(message="交易流水号格式不正确")
	private String trace;
	
	
	/**
	 * 订单金额
	 */
	@NotEmpty(message = "订单金额不能为空")
	@Pattern(message="订单金额格式不正确")
	private String amount;
	
	/**
	 * 对账日期
	 */
	private String stlDate;
	
	/**
	 * 支付状态
	 */
	@NotEmpty(message = "支付状态不能为空")
	private String payState;
	
	/**
	 * 返回码
	 */
	@NotEmpty(message = "返回码不能为空")
	private String retCode;
	
	/**
	 * 返回描述
	 */
	private String retMsg;
	
	/**
	 * 银行对账日期
	 */
	private String bankCheckDate;

	/**
	 * 通知类型  前台通知：1   后台通知：2
	 */
	private String notifyType;

	
	public String getMerId() {
		return merId;
	}

	public void setMerId(String merId) {
		this.merId = merId;
	}

	public String getbProductId() {
		return bProductId;
	}

	public void setbProductId(String bProductId) {
		this.bProductId = bProductId;
	}

	public String getpProductId() {
		return pProductId;
	}

	public void setpProductId(String pProductId) {
		this.pProductId = pProductId;
	}

	public String getInstId() {
		return instId;
	}

	public void setInstId(String instId) {
		this.instId = instId;
	}

	public String getTrace() {
		return trace;
	}

	public void setTrace(String trace) {
		this.trace = trace;
	}


	public String getAmount() {
		return amount;
	}

	public void setAmount(String amount) {
		this.amount = amount;
	}


	public String getStlDate() {
		return stlDate;
	}

	public void setStlDate(String stlDate) {
		this.stlDate = stlDate;
	}

	public String getPayState() {
		return payState;
	}

	public void setPayState(String payState) {
		this.payState = payState;
	}

	public String getRetCode() {
		return retCode;
	}

	public void setRetCode(String retCode) {
		this.retCode = retCode;
	}

	public String getRetMsg() {
		return retMsg;
	}

	public void setRetMsg(String retMsg) {
		this.retMsg = retMsg;
	}

	public String getBankCheckDate() {
		return bankCheckDate;
	}

	public void setBankCheckDate(String bankCheckDate) {
		this.bankCheckDate = bankCheckDate;
	}


	public String getNotifyType() {
		return notifyType;
	}

	public void setNotifyType(String notifyType) {
		this.notifyType = notifyType;
	}
	

	@Override
	public String toString() {
		return "EbankPayNotifyBusiReq [merId=" + merId + ", bProductId=" + bProductId + ", pProductId=" + pProductId
				+ ", instId=" + instId + ", trace=" + trace + ", amount=" + amount + ", stlDate=" + stlDate
				+ ", payState=" + payState + ", retCode=" + retCode + ", retMsg=" + retMsg + ", bankCheckDate="
				+ bankCheckDate + ", notifyType=" + notifyType + "]";
	}

}
